MCP 문서 관리

메뉴

MongoDB Atlas

MongoDB Atlas

MongoDB Atlas MCP 서버는 MongoDB 데이터베이스 및 MongoDB Atlas 클라우드 서비스와 상호작용할 수 있는 Model Context Protocol 구현체입니다. 이 서버를 통해 AI 어시스턴트가 MongoDB 데이터베이스에 쿼리를 실행하고, 스키마를 분석하며, Atlas 클라우드 리소스를 관리할 수 있습니다.

특징

  • 직접 데이터베이스 연결: MongoDB 데이터베이스에 직접 연결하여 컬렉션 쿼리, 문서 관리 등 수행
  • Atlas 클라우드 관리: MongoDB Atlas 조직, 프로젝트, 클러스터 관리 기능 제공
  • 읽기 전용 모드: 데이터 분석용으로 읽기 전용 액세스 설정 가능
  • 도구 선택적 비활성화: 필요에 따라 특정 도구 또는 도구 카테고리 비활성화
  • 스키마 분석: 컬렉션 스키마 자동 분석 및 제공
  • 집계 파이프라인: 복잡한 데이터 집계 및 변환 실행 지원
  • 자연어 인터페이스: 자연어 명령을 MongoDB 작업으로 변환

API

리소스

데이터베이스 목록

  • MongoDB 인스턴스 내 모든 데이터베이스 목록

컬렉션 목록

  • 특정 데이터베이스 내 모든 컬렉션 목록

컬렉션 스키마

  • 특정 컬렉션의 문서 구조 및 스키마 정보

도구

데이터베이스 관리 도구

connect

MongoDB 인스턴스에 연결합니다. - 입력: - connectionString: MongoDB 연결 문자열 (선택 사항, 구성에서 이미 설정되었을 수 있음)

list_databases

MongoDB 연결의 모든 데이터베이스를 나열합니다. - 입력: 없음

list_collections

지정된 데이터베이스의 모든 컬렉션을 나열합니다. - 입력: - database: 데이터베이스 이름

drop_database

MongoDB 데이터베이스를 제거합니다. - 입력: - database: 제거할 데이터베이스 이름

컬렉션 관리 도구

collection_schema

컬렉션 스키마를 설명합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름

collection_indexes

컬렉션 인덱스를 설명합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름

create_index

MongoDB 컬렉션에 인덱스를 생성합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - index: 인덱스 정의 객체 - options: 인덱스 옵션 (선택 사항)

rename_collection

MongoDB 컬렉션 이름을 변경합니다. - 입력: - database: 데이터베이스 이름 - collection: 현재 컬렉션 이름 - newName: 새 컬렉션 이름

drop_collection

데이터베이스에서 컬렉션을 제거합니다. - 입력: - database: 데이터베이스 이름 - collection: 제거할 컬렉션 이름

문서 관리 도구

find

MongoDB 컬렉션에서 find 쿼리를 실행합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건 (선택 사항) - projection: 필드 프로젝션 (선택 사항) - limit: 최대 반환 문서 수 (선택 사항) - skip: 건너뛸 문서 수 (선택 사항) - sort: 정렬 조건 (선택 사항)

aggregate

MongoDB 컬렉션에서 집계를 실행합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - pipeline: 집계 파이프라인 배열 - options: 집계 옵션 (선택 사항)

count

MongoDB 컬렉션의 문서 수를 가져옵니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건 (선택 사항)

insert_one

MongoDB 컬렉션에 단일 문서를 삽입합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - document: 삽입할 문서 객체

insert_many

MongoDB 컬렉션에 여러 문서를 삽입합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - documents: 삽입할 문서 객체 배열

update_one

MongoDB 컬렉션에서 단일 문서를 업데이트합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건 - update: 업데이트 연산자 - upsert: 일치하는 문서가 없을 경우 삽입 여부 (선택 사항)

update_many

MongoDB 컬렉션에서 여러 문서를 업데이트합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건 - update: 업데이트 연산자 - upsert: 일치하는 문서가 없을 경우 삽입 여부 (선택 사항)

delete_one

MongoDB 컬렉션에서 단일 문서를 삭제합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건

delete_many

MongoDB 컬렉션에서 여러 문서를 삭제합니다. - 입력: - database: 데이터베이스 이름 - collection: 컬렉션 이름 - filter: 필터 조건

Atlas 관리 도구

atlas_list_orgs

MongoDB Atlas 조직을 나열합니다. - 입력: 없음

atlas_list_projects

MongoDB Atlas 프로젝트를 나열합니다. - 입력: - orgId: 조직 ID (선택 사항)

atlas_create_project

새 MongoDB Atlas 프로젝트를 생성합니다. - 입력: - orgId: 조직 ID - name: 프로젝트 이름

atlas_list_clusters

MongoDB Atlas 클러스터를 나열합니다. - 입력: - projectId: 프로젝트 ID

atlas_inspect_cluster

특정 MongoDB Atlas 클러스터를 검사합니다. - 입력: - projectId: 프로젝트 ID - clusterName: 클러스터 이름

atlas_create_free_cluster

무료 MongoDB Atlas 클러스터를 생성합니다. - 입력: - projectId: 프로젝트 ID - name: 클러스터 이름 - region: 지역 (선택 사항)

사용 방법

설치 및 구성

필수 조건

  • Node.js (v20 이상)
  • MongoDB 연결 문자열 또는 Atlas API 자격 증명

Claude Desktop 설정

  1. Claude Desktop 구성 파일을 엽니다:
  2. macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  3. Windows: %APPDATA%/Claude/claude_desktop_config.json

  4. mcpServers 객체에 MongoDB 서버 설정을 추가합니다:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--connectionString",
        "mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
      ]
    }
  }
}

또는 Atlas API 자격 증명을 사용하는 경우:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--apiClientId",
        "your-atlas-client-id",
        "--apiClientSecret",
        "your-atlas-client-secret"
      ]
    }
  }
}

환경 변수 설정

환경 변수를 사용하여 구성할 수도 있습니다:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase"
      }
    }
  }
}

또는 Atlas API 자격 증명을 환경 변수로 설정:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_API_CLIENT_ID": "your-atlas-client-id",
        "MDB_MCP_API_CLIENT_SECRET": "your-atlas-client-secret"
      }
    }
  }
}

Atlas API 액세스 설정

Atlas API 도구를 사용하려면 MongoDB Atlas에서 서비스 계정을 생성해야 합니다:

  1. 서비스 계정 생성:
  2. MongoDB Atlas에 로그인 (cloud.mongodb.com)
  3. Access Manager > Organization Access로 이동
  4. Add New > Applications > Service Accounts 클릭
  5. 이름, 설명 및 만료 기간 입력 (예: "MCP, MCP Server Access, 7 days")
  6. 적절한 권한 선택 (전체 액세스의 경우 Organization Owner 선택)
  7. "Create" 클릭

  8. 클라이언트 자격 증명 저장:

  9. 생성 후 표시되는 Client ID와 Client Secret을 복사
  10. 중요: Client Secret은 즉시 저장해야 하며, 다시 표시되지 않음

  11. MCP 서버 구성:

  12. 위 구성 방법 중 하나를 사용하여 apiClientIdapiClientSecret 설정

추가 구성 옵션

읽기 전용 모드

읽기 전용 모드를 활성화하여 데이터 수정을 방지할 수 있습니다:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--connectionString",
        "mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "--readOnly"
      ]
    }
  }
}

또는 환경 변수를 사용:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "MDB_MCP_READ_ONLY": "true"
      }
    }
  }
}

특정 도구 비활성화

특정 도구 또는 카테고리를 비활성화할 수 있습니다:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": [
        "-y",
        "mongodb-mcp-server",
        "--connectionString",
        "mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "--disabledTools",
        "create update delete atlas collectionSchema"
      ]
    }
  }
}

또는 환경 변수를 사용:

{
  "mcpServers": {
    "MongoDB": {
      "command": "npx",
      "args": ["-y", "mongodb-mcp-server"],
      "env": {
        "MDB_MCP_CONNECTION_STRING": "mongodb+srv://username:password@cluster.mongodb.net/myDatabase",
        "MDB_MCP_DISABLED_TOOLS": "create,update,delete,atlas,collectionSchema"
      }
    }
  }
}

활용 사례

  1. 데이터 분석 및 시각화: MongoDB 데이터베이스 컬렉션을 쿼리하고 집계하여 데이터 분석 및 시각화
  2. 스키마 탐색 및 이해: MongoDB 컬렉션의 스키마를 분석하여 데이터 구조 파악
  3. 데이터베이스 관리 자동화: 자연어 명령을 통해 MongoDB 데이터베이스 및 컬렉션 관리 작업 자동화
  4. Atlas 클라우드 관리: MongoDB Atlas 클러스터, 사용자 및 프로젝트 관리 자동화
  5. 데이터 마이그레이션 및 변환: 문서 간 데이터 마이그레이션 및 변환 작업 수행

연결된 구성 요소